# -*- coding: utf-8 -*-

#Descrição: Classe para criar um servidor de HTTP para mostrar as listagens
#Data: 09/12/11
#Autor: Luís Costa Nº 6032
#-----------------------------------------------

# Para criar um servidor de HTTP
import SimpleHTTPServer
import SocketServer
from KThread import *

class HTTPServer (threading.Thread):
    
    #Inicia o servidor de HTTP numa thread
    #------------------------
    def start(self, port):

        self.httpServer = KThread(target=self.start_server)
        self.httpServer.start()
    pass
    
    #Inicia o servidor de HTTP
    #------------------------
    def start_server(self):
        port = 8000
        Handler = SimpleHTTPServer.SimpleHTTPRequestHandler
        httpd = SocketServer.TCPServer(('', port), Handler)

        print "Servidor criádo e a utilizar a porta: ", port
        httpd.serve_forever()
    pass
    
    #Para a thread do servidor de HTTP
    #------------------------
    def stop(self):

        self.httpServer.kill()
        print "Servidor parado!"

    pass
    
    def stopped (self):
        return self._stop.isSet()
        pass
    pass


